The International Organization for Standardization (ISO) is a worldwide federation of national standards bodies from many countries. ISO's mission is to promote the development of standardization and related activities in the world with a view to facilitating exchange of goods and services, and to developing cooperation in the spheres of intellectual, scientific, technological and economic activity. ISO works to create international agreements which in turn are published as International Standards. ISO standards cover all technical fields except electrical and electronic engineering. Such standards are necessary for multiple reasons. First, no industry in today's world is completely independent from components, rules of application, or rules used in other industries. Secondly, emerging technologies have a greater chance of advancement when new terminology involved is standardized. Third, consumers benefit from the competition of certain fast moving technologies, i.e. computers and telecommunications equipment if there are global standards which ensure compatibility amongst different manufacturers.
Finally, industry-wide standardization results from consensus agreements reached between all economic players in that industrial sector suppliers, users, and often governments. They agree on specifications and criteria to be applied consistently in the choice and classification of materials, the manufacture of products, and the provision of services. The aim is to facilitate trade, exchange and technology transfer through: enhanced product quality and reliability at a reasonable price; improved health, safety and environmental protection, and reduction of waste; greater compatibility and interoperability of goods and services; simplification for improved usability; reduction in the number of models, and thus reduction in costs; increased distribution efficiency, and ease of maintenance.
The UN/SPSC is a global open standard for classifying products and services. The ten-digit, hierarchical classification system is the result of a merger of the United Nations' Common Coding System (UNCCS) and Dun & Bradstreet's Standard Products and Services Classification (SPSC). The UNSPSC allows companies to consistently classify the products and services they buy and sell, thereby providing a comprehensive picture of the company's business. This critical data leads to greater controls and efficiencies within the corporation.
The UNSPSC classifies products and services on five levels:
segment, family, class, commodity and business function. Its hierarchical structure consists of one, two, three, or four tier levels, depending on the specific needs of the user. Each subsequent level of detail involves a subset of codes and descriptions preceding it in the code's hierarchy. For example, ballpoint pens at the eight-digit level are a subset of writing instruments at the third tier level, which is a subset of office supplies at the second tier level. These descriptions are varying degrees of “Office Equipment, Accessories and Supplies” at the root level. An additional fifth tier level (the 9th and 10th digits), the business function, can be added to indicate a business relationship to the supplier such as rental/lease, wholesale, retail or original equipment manufacturer. Each UNSPSC is unique and allows unambiguous translation of the commodity's description in any language.
XML (Extensible Markup Language) is a set of guidelines for designing text formats for data, in a way that produces files that are easy to generate and read by computer. XML was designed to describe data and to focus on what that data is. Unlike previous markup languages, XML has the ability to draw distinctions amongst various pieces of information in its file, not just how the data should be formatted. XML uses tags (words bracketed by ‘<’ and ‘>’) to delimit pieces of data. For instance, <price>96.20</price> means that there is a piece of data called “price” that equals 96.20. Using this method, a user can put large amounts of structured data into a text file that can be easily transmitted and understood electronically amongst different computers.
XML is very much like a language in that it has a set of rules and a vocabulary. Each web browser will understand XML a little differently, since each company that creates a browser can determine which rules and vocabulary it will understand, and which ones to ignore. Luckily most of the grammar and vocabulary needed to make XML understood, is standardized by a governing body known as the World Wide Web Consortium (W3C). The W3C requires four separate items in order to properly render an XML page, they are:
XML is a guideline for languages that affect the organization and presentation of web pages.
XML Linking Language (XLink), which is the way that a web page should deal with a hyperlink.
XML Extended Pointer Notation (XPointer), which determines what kind of information a hyperlink may contain. A hyperlink doesn't just have to point to another web page, it can contain information about how links work within a particular document. This would allow a programmer to change all links leading to a page, by changing just one link, instead of each instance it appears on a website.
Extensible Style Language (XSL), which is the style sheet that controls how an XML page should display to a user.
XLink, XPointer and XSL are all written in XML, and all control how a web page will be displayed and link to other pages. In order to organize and understand the content of an XML page, the page needs an XML Document Type Definition (DTD).
A DTD acts as a dictionary and style guide for the XML. It defines what each term in the XML document means, and the relationships amongst them. One big advantage of using XML is not only the ability to create your own logical data structure using a DTD, but also being able to use DTD's that other have created for specific industries. Thus chemists, lawyers and artists all could have a generalized DTD that would generally fit the needs for their respective professions. This may save time for a novice (or expert) programmer who isn't too keen on reinventing the wheel for a website that clearly falls within a particular industries needs.
Currently, searching for items for procurement is a complex issue. Not only must a person know specific pieces of information about the item he wishes to find, he must also know how to properly input his request into a computer, so that the computer properly understands his request. It also happens that different procurement systems use different terminology and formatting so that a proper request on one procurement system will not be proper on another one. For example, a search done on one current e-commerce procurement system solution requires the following kind of formatting in order to return a proper search of a bolt with a ⅝″ length and ¼″ diameter head: bolt, len 0.625, diameter 0.25. This method, and similar types of methods are not very intuitive to a novice user, and allow for a significant number of formatting mistakes. A misspelled word or misplaced comma will cause a search to fail wasting valuable time, and causing needless frustration to a user.
As another example, if one wishes to search for a specific manufacturer's kind of bolt, the user must know the precise manufacturers' name or at least the code by which the procurement system refers to that manufacturer. If that information is inputted incorrectly, the search may very well come up empty and thus make the user think that the manufacturer doesn't make that kind of bolt. This, of course, may very well be not true because, for example, the user accidentally spelled the name of the manufacturer with a “c” instead of a “k”, or inputted an improper code for that manufacturer and thus the search would not have any results for that misspelled manufacturer. The same undesired result might happen if the user did not know that the real name of the item in question did not have the name “bolt” in it (yet it was often referred to as a bolt). The system would report an empty result, yet the item is abundantly in stock.
Even if the user was correct about the name and type of item he is searching for, the list returned of possible matches could very well be unmanageable. Thus, a typical search also includes attribute characteristics about the item in question to narrow down the possible matches. A user must be familiar with terminology for the kinds of attribute characteristics of an item to help narrow down the results. For instance, one system might refer to the width of an item by “w”, yet another might refer to it by “wid”. Again the improper nomenclature on a system will cause the system to return an incorrect result. Not only must a user be familiar with the proper names of attribute characteristics in order to narrow his search, but he must also be aware of what the attribute characteristics are of a particular item. For instance, if one was told to find a standard hex-head bolt with a grip length of 3.18 mm, a length of 25.4 mm, and a hex size of 11.11 mm, here are some questions one might have: What is grip length? Is the grip length from the end of the bolt or the end of the threads? Is the hex size across the bolt head points or accross the bolt head flats? These questions demonstrate how much knowledge a user must have about the item he is searching for, before he looks for it. On these traditional systems, without such knowledge a user has little chance of a successful search without outside assistance.
What if a user wanted to search by more than one attribute characteristic? Currently, to do so a user might then narrow a search by specifying that the length of the item needs to be less than 10 inches and the width greater than 16 feet. To create such a request a user needs to be familiar with how the system requires the input of such relationships and multiple criteria. To specify the above criteria the proper entry might look like this: l<10″ and w>16′, or this: l<10″^w>192″, or this: len less 10 in and wid more 16 ft. Again without knowing the specifics of a particular system, a user will have little success searching without training and practice.
It is clear from the above examples that a user needs to be familiar with many different aspects of search terminology and of the item itself before coming up with a proper search before the user even gets to look at the results. A user needs to know what attribute characteristics describe the specific product, what the abbreviations of those attribute characteristics are, how to specify a maximum, minimum or exact boundary of that attribute, what kind of measurements are relevant to such an attribute characteristic and how to specify them (feet v. inches, meters v. inches, feet v. millimeters etc.), and an understanding of how Boolean connectors (and, or, not) work to combine multiple search criteria. After all of this, a user must then still enter the search in a way that the system expects or all is for naught. Thus the user is assumed, by these traditional systems, to have a tremendous amount of innate knowledge of a particular system when performing a traditional search on a procurement system.
It is also clear from the above, that just to get results that match a specific query, a tremendous amount of effort must be made by a user to format that query properly. There always is a danger that when a result is given to a user, it might not be exactly what the user wants, not because of the data supplied, but because of the order or format it was supplied in. Thus, system searching dependence takes valuable time away from the true purpose of a procurement search system, i.e. to locate a particular item fast, efficiently, and without mistakes.
In order to successfully implement parametric searching on a database, attribute data must be organized and entered into a database. Each manufacturer needs to electronically send data regarding items to the database in a format that can be deciphered and entered into the database. Deciphering data from multiple manufacturers could be a nightmare if each manufacturer is allowed to organize his data in a different way. If this was allowed, each individual manufacturer would have to be dealt with in a unique way when trying to extract data from the electronic file he sent to a database. Since a database expects data to be organized in one particular way, there would have to be a program for each manufacturer that would decipher the data properly. It would be much simpler if there was just one standardized data format to deal with, that would satisfy all of the different manufacturers associated with a corporation needs. In the case where parametric searching is involved, figuring out what attribute characteristics define a particular item, and what the specific attributes are of each attribute characteristic are difficult. A data format must be able to handle this complexity in a way that is easy for manufacturers to enter, and for the corporation to extract.
Unfortunately, there are situations in the procurement context where an item is not able to be searched parametrically. Certain items may not yet have been standardized against an industry (or ISO and/or UN/SPSC) and thus do not have attributes that are generally understood. For instance, there are no standards for defining the attributes of a pencil. One office supplier might use color and hardness in a description, where as another office supplier might use the shape and composition of the eraser as a distinguishing feature. Since there are no standards, trying to search parametrically for such an item is nearly impossible. This does not preclude a need for pencils to be in a procurement database however.
The present invention is directed to overcoming one or more of the problems set forth above.